package com.fwj.common.entity;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.Size;

import java.io.Serializable;

import java.time.LocalDateTime;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
*
* @TableName chat_message
*/
@Data
@Table(name = "chat_message")
public class ChatMessage implements Serializable {

    /**
    * 聊天信息主键
    */
    @Id
    @GeneratedValue(generator = "JDBC")
    @ApiModelProperty("聊天信息主键")
    @Column(name = "message_id")
    private Long messageId;

    /**
     * 内容，支持富文本
     */
    @ApiModelProperty("内容，支持富文本")
    @Column(name = "content")
    private String content;

    /**
    * 聊天信息创建者
    */
    @ApiModelProperty("聊天信息创建者")
    @Column(name = "from")
    private Long from;

    /**
    * 聊天信息接受者，ALL是全体消息
    */
    @ApiModelProperty("聊天信息接受者，ALL是全体消息")
    @Column(name = "to")
    private Long to;

    /**
     * 消息类型
     */
    @Size(max= 30,message="编码长度不能超过30")
    @ApiModelProperty("消息类型")
    @Column(name = "type")
    private String type;

    /**
    * 发送时间
    */
    @ApiModelProperty("发送时间")
    @Column(name = "create_time")
    private LocalDateTime createTime;

    /**
    * 消息状态
    */
    @Size(max= 20,message="编码长度不能超过20")
    @ApiModelProperty("消息状态")
    @Column(name = "status")
    private String status;

}
